// 确保 Vue 实例在 DOM 加载后初始化
new Vue({
    el: '#app', // 挂载 Vue 实例
    data() {
        return {
            treeData: [],
            tableData: [],
            multipleSelection: []
        }
    },
    created() {
        this.fetchMenuData(); // 页面创建时请求菜单数据
        this.getTableData();
    },
    methods: {
        fetchMenuData() {
            fetch('/getPeople')
                .then(response => response.json())
                .then(data => {
                    console.log("输出树：",data);
                    //console.log(data);
                    this.treeData = data; // 将返回的数据赋值给 menuData
                })
                .catch(error => {
                    console.error('请求菜单数据失败', error);
                });
        },
        getTableData(){
            axios.get('/getConsumer')
                .then(response => {
                    console.log("输出表格数据：", response.data.data);
                    this.tableData = response.data.data;
                })
                .catch(error => {
                    console.error('请求表格数据失败', error);
                });
        },
        handleButtonClick() {
            alert('按钮被点击了！');
        },
        handleButtonClick1() {
            alert('树按钮节点获取！');
            const checkedNodes = this.$refs.tree.getCheckedNodes(); // 获取选中的节点
            checkedNodes.forEach(node => {
                console.log(`ID: ${node.id}, Label: ${node.label}`); // 打印每个选中节点的 ID 和 label
            });
        },
        // 节点点击事件
        handleNodeClick(node) {
            console.log(`ID: ${node.id}, Label: ${node.label}`);
            alert(`选中节点 - ID: ${node.id}, Label: ${node.label}`);
        },
        handleOpen() {
            // 处理菜单打开事件
            },
        handleClose(){

        },
        toggleSelection(rows) {
            if (rows) {
                rows.forEach(row => {
                    this.$refs.multipleTable.toggleRowSelection(row);
                });
            } else {
                this.$refs.multipleTable.clearSelection();
            }
        },
        handleSelectionChange(val) {
            this.multipleSelection = val;
        }
    }
});